package com.softdev.system.generator.entity;

import com.softdev.system.generator.util.StringUtils;
import java.util.HashSet;
import java.util.List;
import java.util.Set;

/**
 * class info
 *
 * @author xuxueli 2018-05-02 20:02:34
 */
public class ClassInfo {

    private String tableName;
    private String classNameFirstLow;
    private String className;
	private String classComment;
	private List<FieldInfo> fieldList;
    private Set<String> protoFieldTypeImportSet = new HashSet<>(16);

    public String getTableName() {
        return tableName;
    }

    public void setTableName(String tableName) {
        this.tableName = tableName;
    }

    public String getClassNameFirstLow() {
        return classNameFirstLow;
    }

    public void setClassNameFirstLow(String classNameFirstLow) {
        this.classNameFirstLow = classNameFirstLow;
    }

    public void setProtoFieldTypeImportSet(Set<String> protoFieldTypeImportSet) {
        this.protoFieldTypeImportSet = protoFieldTypeImportSet;
    }

    public String getClassName() {
        return className;
    }

    public void setClassName(String className) {
        this.className = className;
    }

    public String getClassComment() {
        return classComment;
    }

    public void setClassComment(String classComment) {
        this.classComment = classComment;
    }

    public List<FieldInfo> getFieldList() {
        return fieldList;
    }

    public void setFieldList(List<FieldInfo> fieldList) {
        this.fieldList = fieldList;
    }



    public Set<String> getProtoFieldTypeImportSet() {
        return protoFieldTypeImportSet;
    }


    public  Set<String> addProtoFieldTypeImport(String protoFieldTypeImport){
        if(StringUtils.isNotBlank(protoFieldTypeImport)){
            protoFieldTypeImportSet.add(protoFieldTypeImport);
        }
        return protoFieldTypeImportSet;
    }
}
